#ifndef SIN_H_
#define SIN_H_

#include "../../SAMA_Function.h"

#define MAX_SIN_NUM 4


typedef struct {
	char type;				//< 类型
	float k;				//< 系数
	float bias;				//< 偏置
}SIN_Par_t;



struct SIN_T
{
	Model_Base_t Base;		//< 模块基本参数结构体
	SIN_Par_t Par;			//< 模块可调参数结构体
};


extern SIN_T* SIN_t;


bool CALCU_SAMA(SIN)(Model_Base_t* arg, float dt, bool* DI, bool* DO, float* AI, float* AO);	//< SAMA运算函数
int BC_PARA(SIN)(Model_Base_t* arg, void** Data);												//< 广播SAMA参数变量函数（无参数需要广播的模块直接将BCPara函数设置为NULL即可）
int CHANGE_PAR(SIN)(Model_Base_t* arg, void** Data);											//< 在线修改模块参数


#endif
